Các giai đoạn thiết lập Windows_Installer

Giao diện người dùng

Giai đoạn giao diện người dùng thường truy vấn hệ thống mục tiêu, hiển thị thuật sĩ cài đặt và cho phép người dùng thay đổi các tùy chọn khác nhau ảnh hưởng đến việc cài đặt.

Tuy nhiên, trình tự giao diện người dùng không nên thực hiện bất kỳ thay đổi nào đối với hệ thống, vì những lý do sau:

  1. Một người dùng có thể cài đặt hoặc gỡ cài đặt gói MSI ở chế độ thụ động hoặc chế độ im lặng, bỏ qua giai đoạn này hoàn toàn. (Chế độ thụ động bỏ qua giai đoạn giao diện người dùng nhưng hiển thị thanh tiến trình đồ hoạ Chế độ im lặng không hiển thị gì) Trong quá trình cài đặt, thông tin thu thập được trong giai đoạn này có thể được cung cấp trước bằng giao diện dòng lệnh.
  2. Chuỗi giao diện người dùng chạy với đặc quyền của người dùng, và không phải với các đặc quyền nâng cao được yêu cầu trong quá trình cài đặt.

Thực hiện

Khi người dùng nhấp vào nút "Cài đặt" trong một trình cài đặt MSI điển hình, quá trình cài đặt sẽ tiến hành đến giai đoạn Thực hiện, trong đó các thành phần phần mềm sẽ được cài đặt thực sự. Giai đoạn Thực hiện làm thay đổi hệ thống, nhưng nó không hiển thị bất kỳ phần tử giao diện người dùng nào.

Giai đoạn Thực hiện diễn ra trong hai bước:[cần giải thích Two mode or two steps? Do both run?]

  • Chế độ tức thì. Trong giai đoạn này, Windows Installer nhận các hướng dẫn từ người dùng hoặc ứng dụng để cài đặt hoặc gỡ bỏ các tính năng của sản phẩm. Các yêu cầu gây ra việc thực hiện các trình tự các hành động truy vấn cơ sở dữ liệu cài đặt để xây dựng một script nội bộ mô tả giai đoạn thực hiện chi tiết.
  • Chế độ hoãn lại. Trong giai đoạn này, kịch bản được xây dựng trong chế độ ngay lập tức được thực hiện trong ngữ cảnh của dịch vụ Windows Installer đặc quyền. Kịch bản phải được thực hiện bởi một tài khoản đặc quyền vì sự không đồng nhất của các kịch bản trong đó một hoạt động thiết lập được bắt đầu. Ví dụ: đặc quyền nâng cao là cần thiết cho việc phục vụ yêu cầu cài đặt theo yêu cầu từ những người dùng không có đặc quyền. Tuy nhiên, để chạy với các đặc quyền cao cấp, gói này phải được triển khai bởi một quản trị viên cục bộ hoặc do một quản trị viên hệ thống quảng cáo sử dụng Group Policy.

Quay ngược lại

Tất cả các hoạt động cài đặt diễn ra theo kiểu giao dịch.[4] Nói cách khác, đối với mỗi thao tác mà Windows Installer thực hiện, nó sẽ tạo ra một thao tác hoàn tác tương tự có thể phục hồi thay đổi được thực hiện cho hệ thống. Trong trường hợp có bất kỳ hành động kịch bản nào không thành công trong quá trình hoãn thực hiện hoặc hoạt động bị huỷ bỏ bởi người sử dụng, tất cả các hành động được thực hiện cho đến khi điểm đó được cuộn lại, phục hồi hệ thống về trạng thái ban đầu. Các hành vi Windows Installer chuẩn sẽ tự động ghi thông tin vào một kịch bản rollback; Các tác giả gói tạo các hành động tuỳ chỉnh để thay đổi hệ thống mục tiêu cũng nên tạo các hành động trả về tương ứng (cũng như các hành động gỡ bỏ và gỡ bỏ cài đặt-rollback). Là một tính năng thiết kế, nếu được áp dụng chính xác cơ chế này cũng sẽ lật lại việc gỡ bỏ không thành công một ứng dụng sang trạng thái làm việc tốt.

Tài liệu tham khảo

WikiPedia: Windows_Installer http://filext.com/file-extension/msi http://msdn.microsoft.com/en-us/library/2kt85ked.a... http://msdn.microsoft.com/en-us/library/aa367541(V... http://msdn.microsoft.com/en-us/library/aa367548(V... http://msdn.microsoft.com/en-us/library/aa368264(V... http://msdn.microsoft.com/en-us/library/aa369293(V... http://msdn.microsoft.com/en-us/library/aa369554(V... http://msdn.microsoft.com/en-us/library/aa371185(V... http://msdn.microsoft.com/en-us/library/aa371185.a... http://msdn.microsoft.com/en-us/library/aa371370(V...